package com.tianshi.product.exceptionhandler;


import com.alibaba.csp.sentinel.slots.block.BlockException;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;

/*
* 全局异常处理器,这个对web层的controller异常无效
* */
@ControllerAdvice // 标记是一个界面类， 开启全局异常处理
@Slf4j
public class GlobalExceptionHandler {
//    @ExceptionHandler(Exception.class) //当前方法要处理的异常类型
//    public void handleException(Exception e) {
//        log.info("全局异常处理，异常信息为：{}", e.getMessage());
//        e.printStackTrace();
//    }

    @ExceptionHandler(value = BlockException.class)
    @ResponseBody
    public String handleBlockException(BlockException e) {
        log.info("handleBlockException限流异常处理，异常信息为：{}", e.getMessage());
        return "限流异常处理，异常信息为：" + e.getMessage();
    }
}
